As modern businesses have become more reliant on information systems to conduct their affairs, it has become typical for such companies to employ distributed enterprise computing environments having many different databases and many different enterprise applications for managing the day-to-day business activities of the company. These varying enterprise applications may include transactional databases, CRM applications, ERP applications, data warehouse and the like, and oftentimes these applications are distributed across local and wide area network connections and may operate on many distinct server systems at numerous geographic locations. Moreover, each of these varying applications may include a separate database of business-related data, much of which may overlap, at least in part, with data maintained in other databases maintained by other enterprise applications.
The kinds of data that these systems manage can vary from customer data, to inventory data, to financial transaction data, etc. In addition, each of these different kinds of data can be made up of any number of unique data assets that have particular attributes specific to a given subject area. For example, a customer is a specific type of data asset. It can be differentiated from a product data asset in that they both have different attributes or rules for use. The former may contain address or other contact information of the customer, while the latter may contain size, weight and quantity information of a particular product.
As noted above, oftentimes the data assets produced and processed by these various and numerous enterprise applications are segregated within each application, server, or sub-network of the enterprise computing environment such that other applications are not aware of the same data assets maintained by a particular application. Unfortunately, in this scenario, two different server systems executing two different enterprise applications may be aware of the same customer, but they may store substantially differing accounts of the attributes or activities of that particular individual. For example, one system may store only the name, address and social security number of a particular customer, whereas the second system may store this same information and may also store information regarding products recently purchased by the customer. In addition to this disparity in the types of data attributes being stored, each system may also store the data attributes in slightly differing formats.
The scenario described above, which is typical in most enterprise-wide computing environments that employ multiple, separate applications and databases, almost guarantees that the overall computing system includes large amounts of non-standard, redundant, and sometimes confusing data regarding the customers, products, etc., that are critical to operating the business. Because of this, it can be very difficult to get an accurate view of the business activities of the enterprise, such as, for example, obtaining a clear and complete picture of particular customer activities of the business.